package unq.uis.robots.ui;

import java.util.ArrayList;
import java.util.List;

import org.uqbar.arena.Application;
import org.uqbar.arena.windows.Window;

import unq.uis.robots.applicationsModels.JugadorVista;
import unq.uis.robots.model.Jugador;
import unq.uis.robots.model.Robot;
import unq.uis.robots.ui.UsuarioWindow;

/**
 * Correr esta clase con el siguiente argument
 * 
 * -Djava.system.class.loader=org.uqbar.arena.aop.ArenaClassLoader
 *
 **/
public class RobotApplication extends Application {

	public static void main(String[] args) {
		new RobotApplication().start();
	}

	@Override
	protected Window<?> createMainWindow() {
		
		this.crearVariosJugadores();
		Jugador jugador = this.crearJugador("Leo",this.crearListaDeRobots());
		return new UsuarioWindow(this, new JugadorVista(jugador));
	}



	private Jugador crearJugador(String nombre, List<Robot> robots) {
		return new Jugador(nombre, 4000, robots);
	}
	
	private List<Robot> crearListaDeRobots(){
		Robot robot1 = new Robot("pepe", 10, 34);
		Robot robot2 = new Robot("joselito", 43, 50);
		Robot robot3 = new Robot("mario", 100, 0);
		List<Robot> robots = new ArrayList<Robot>();
		robots.add(robot1);
		robots.add(robot2);
		robots.add(robot3);
		return robots;
	}
	
	private void crearVariosJugadores() {
		this.crearJugador("Nestor",this.crearListaDeRobots());
		this.crearJugador("Que Jugador ;-)",this.crearListaDeRobots());		
	}
}